Electronic device and method of managing its keyboard

ABSTRACT

The invention relates to an electronic device and a method of managing a virtual keyboard of the electronic device. The device comprises a touch pad ( 106 ), a processing unit ( 600 ) and a feedback unit ( 612 ), which provides tactile feedback unit ( 612 ) for the user. The processing unit ( 600 ) is configured to determine a virtual keyboard ( 104 ) for the touch pad ( 106 ) and a tactile appearance of the keyboard ( 104 ), receive information generated by the pressing of a keyboard ( 104 ) key and identify the key that was pressed on the basis of the information. The processing unit ( 600 ) is further configured to collect information on the key presses and carry out an analysis of them, and re-determine the tactile appearance of the keyboard ( 104 ) on the basis of the collected information and the analysis carried out so as to make the keyboard more ergonomic for the user, which makes it easier to use the keyboard ( 104 ) and/or the pressing of a wrong key less likely.

FIELD

The invention relates to an electronic device and to a method ofmanaging the virtual keyboard of the electronic device.

BACKGROUND

Electronic devices, e.g. portable subscriber terminals of a mobilecommunication system, usually include a keyboard. The keyboard can beimplemented as a virtual keyboard using a touch pad, for example. Thetouch pad may also be provided with a display; this solution is known asa touch screen. The use of a virtual keyboard is facilitated byproviding the user with tactile feedback on its use. As the devices aremade smaller, the size of the virtual keyboard can also be decreased.When pressing keyboard keys, the user may also press wrong keys. Thesmall key size may increase the occurrences of wrong key presses. Thedimensions of users' hands are different and the ways in which the keysare pressed also vary: some use the thumb whereas the others use theindex finger. Thus the tactile appearance of the keyboard is usuallyalways a compromise; it suits an average user fine but has not beendesigned in accordance with the needs and routines of any individualuser. As the use of different electronic devices provided with akeyboard is constantly becoming more common, there is a great need toenhance the ergonomics of keyboards.

BRIEF DESCRIPTION

The object of the invention is to provide an improved electronic deviceand an improved method of managing the virtual keyboard of theelectronic device.

One aspect of the invention relates to an electronic device, comprisinga touch pad, a processing unit connected to the touch pad over a datatransmission connection, the processing unit being configured todetermine a virtual keyboard on the touch pad and a tactile appearanceof the touch pad, receive information generated by the pressing of akeyboard key and identify the key that was pressed on the basis of theinformation, and a feedback unit connected to the processing unit over adata transmission connection, the feedback unit being configured toprovide tactile feedback on the keyboard use for the device user. Theprocessing unit is further configured to collect information on keypresses and carry out an analysis of them, and re-determine the tactileappearance of the keyboard on the basis of the collected information andthe analysis carried out so as to make the keyboard more ergonomic forthe user, which makes the use of the keyboard easier and/or the pressingof a wrong key less likely.

One aspect of the invention relates to a method of managing the virtualkeyboard of an electronic device, the method comprising: determining atactile appearance of the virtual keyboard; receiving informationgenerated by the pressing of a keyboard key, and identifying the keythat was pressed using the information. The method further comprises:collecting information on the key presses and carrying out an analysisof them; and re-determining the tactile appearance of the keyboard onthe basis of the collected information and the analysis carried out soas to make the keyboard more ergonomic for the user, which makes the useof the keyboard easier and/or the pressing of a wrong key less likely.

The preferred embodiments of the invention are disclosed in thedependent claims.

The invention is based on the idea that the electronic deviceautomatically analyzes how successfully the keyboard is used. On thebasis of the analysis, the tactile appearance of the keyboard istailored to meet the user's needs and routines better.

The device and the method of the invention provide several advantages. Apersonal keyboard can be implemented for each user with relativelylittle computation. The usability of small keyboards, in particular, canbe improved. The method described can also be utilized in the productdevelopment phase, where the tactile keyboard appearance can be designedas ergonomic as possible for a large number of people on the basis ofempirical tests carried out on the users.

LIST OF FIGURES

The invention will now be described in greater detail by means ofpreferred embodiments, with reference to the accompanying drawings,where

FIGS. 1A, 1B and 1C illustrate implementation of a virtual keyboard andexamples of the appearance of an electronic device provided with akeyboard,

FIGS. 2, 3, 4, and 5 illustrate tests carried out by the applicant;

FIG. 6 is a simplified block diagram of the structure of an electronicdevice;

FIGS. 7A and 7B illustrate the devices of FIGS. 1B and 1C after thetactile appearance of their keyboards has been made more ergonomic;

FIG. 8 illustrates the structure of a processing unit of the electronicdevice;

FIG. 9 illustrates some principles according to which the tactilekeyboard appearance can be re-determined; and

FIG. 10 is a flow chart illustrating a method of managing the keyboardof the electronic device.

DESCRIPTION OF THE EMBODIMENTS

The electronic device may be, for example, a portable device forubiquitous data processing, such as a subscriber terminal of a radiosystem, e.g. mobile communication system, a PDA device (Personal DigitalAssistant) or another device, e.g. an electronic measurement devicewhere the user interface comprises a keyboard. The device may alsocombine different functions, i.e. it may be a combination of asubscriber terminal and a PDA device, for example. An example of thiskind of combined device is the Nokia® Communicator®.

The electronic device comprises a virtual keyboard, which providestactile feedback and can be formed using the structure shown in FIG. 1A,for example. The topmost part is a touch pad 106, below which there maybe a display, and the lowest part is a feedback unit 108, which providestactile feedback. U.S. Pat. No. 5,977,867, U.S. 2003/0038776 and WO03/038800, which are incorporated herein by reference, describe varioussolutions for giving tactile feedback. The solutions described can beused, where applicable, in connection with the structure described inFIG. 1A. The touch pad 106 can be implemented by prior art solutions,which may be based on capacitive or resistive sensors. When the usertouches the touch pad 106 with his finger, for example, the touchedpoint and usually also the touch force can be determined. The display102 can be implemented by prior art solutions; for example, if thedisplay should be flat, a liquid crystal display (LCD), plasma displayor thin film transistor display (TFT) can be used. The feedback unit 108providing tactile feedback can be implemented by prior art solutions,for example by a piezo-electric element or a linear vibrator based on asolenoid. The feedback unit 108 generates a mechanical movement, whichthe user can sense through touch. The frequency, amplitude and durationof the movement can be controlled. The movement can be sensed astrembling and vibration. The movement can simulate the click generatedby a key press, for example. In the most complex case, the tactilefeedback can imitate the texture of a surface. The home page of acompany producing piezoelectric elements is found atwww.americanpiezo.com. This manufacturer calls these piezoelectricelements ‘disc benders’.

FIGS. 1B and 1C illustrate a front view of the device appearance and aside view of how the components shown in FIG. 1A are located inprinciple. In the example of FIG. 1B, the device 100 is a subscriberterminal of a radio system, which is provided with a display 102. InFIG. 1A, the display 102 is a touch screen on which a keyboard 104 hasbeen generated. In our example the keyboard comprises twelve keys, i.e.“1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “0”, “*” and “#”. Asdescribed, the display 102 is provided with a touch pad 106 and afeedback unit 102. FIG. 1C illustrates a subscriber terminal 100, whichcomprises a display 102 and a touch pad 106, on which a virtual keyboardhas been formed. As described, the image 104 of the keyboard, i.e. thecontours of single keys, can be printed on the surface of the touch pad106 during its manufacture, but this is not necessary. As described, thedisplay 102 may be a separate part, and the touch pad 106 and thefeedback unit 108 are in connection with each other.

Next, the structure of the electronic device will be described withreference to FIG. 6. Since we use a subscriber terminal as an example,the device 100 comprises an antenna 604 and a radio transceiver 602. Theradio transceiver 602 is e.g. a prior art transceiver of a mobilestation which functions in the GSM system (Global System for MobileCommunications), GPRS system (General Packet Radio Service) or in theUMTS system (Universal Mobile Telecommunications System), for instance.In addition to the above-mentioned virtual keyboard 104, display 102,touch pad 106 and feedback unit 108 for implementing the user interface,a typical device 100 comprises a microphone 608 and a loudspeaker 610for processing sound. A chargeable battery 606 usually functions as thepower source.

The device 100 further comprises a processing unit 600, which controlsand monitors the operation of the device and its various parts. Theprocessing unit 600 also includes the application programs of the device100, e.g. for radio signal processing and user interface management.Nowadays the processing unit 600 is usually implemented as a processorand its software but various hardware solutions are also feasible, suchas a circuit built from separate logic components or one or moreapplication-specific integrated circuits (ASIC). If necessary, there maybe more than one processor. A hybrid of these solutions is alsofeasible. In the selection of the implementation method a person skilledin the art will naturally consider the requirements set on the size andpower consumption of the device, the necessary processing capacity,production costs and production volumes.

An electronic device 100 comprising a touch pad 106, a processing unit600 connected to the touch pad 106 over a data transmission connectionand a feedback unit 612 connected to the processing unit 600 over a datatransmission connection was described above. The processing unit 600 isconfigured to determine a virtual keyboard 104 for the touch pad 106 anda tactile appearance of the keyboard 104. The feedback unit 612 isconfigured to give tactile feedback on the use of the keyboard 104 tothe device user.

To manage the keyboard 104, the processing unit 600 is configured toreceive information generated by the pressing of a keyboard 104 key andto identify the key that was pressed on the basis of the information.The touch pad 106 usually gives information on the point where thescreen was pressed, e.g. as x and y coordinates, and also on the forceby which the key was pressed. Other control data may also be transmittedto the processing unit 600 from the touch pad 106.

The processing unit 600 is further configured to collect theabove-mentioned information on the key presses and to carry out ananalysis of them. The analysis is used to generate at least one of thefollowing results: coordinates of an accepted key press, coordinates ofa rejected key press, coordinates of a corrected key press, time usedfor successive key presses, mean of the coordinates of the presses ofone key, variance of the coordinates of the presses of one key, anotherstatistical variable describing the presses of one key. The coordinatesmay refer to coordinates that define the pressed point with a desiredaccuracy, e.g. the centre point of a press or the touched area definedby the borderlines of a press. The statistical variable refers to otherfeasible ways of determining statistics for a key press, e.g. the medianor the average size of the touched area, expressed as the width andheight or the radius. The touched area can also be defined as anelliptical area where the touched area is defined by the centre pointand main axes of the ellipse. The processing unit 600 can be configuredto identify a press at the border of two keys or outside the keyboard104 as a rejected key press. In addition, the processing unit 600 may beconfigured to identify the following sequence as a corrected key press:the first key press is deleted by the delete key, after which anotherkey is pressed.

Then, on the basis of the collected information and the analysis carriedout, the processing unit 600 re-determines the tactile appearance of thekeyboard 104 so as to make the keyboard 104 more ergonomic for the user,which makes the use of the keyboard 104 easier and/or the pressing of awrong key less likely. The tactile keyboard 104 appearance comprises atleast one of the following: key size, key shape and key location. Thekey shape can also be defined as the key position; for example, if thekey is implemented as an ellipse, the key position is determined as thedirections of the ellipse's main axes. Thus the key shape can beadjusted by rotating the ellipse that defines it. Depending on thephysical dimensions of the device 100, the processing unit 600 isconfigured to define limits for the keyboard 104 appearance that itcannot exceed.

FIG. 8 illustrates a feasible structure of the processing unit 600. Theblocks belonging to the processing unit 600 are structural entities thatcan be implemented e.g. as program modules, i.e. by a programminglanguage, such as the C programming language, C++ programming language,computer language, or by an assembler, which are stored as runnableversions in a memory provided in the processor and run on the processor.Instead of translatable programming languages, other interpretableprogramming languages may naturally also be used, provided that theysatisfy the required processing rate and capacity. When the processingunit 600 is implemented as an ASIC, the structural entities are ASICblocks. Information is transmitted from the touch pad 106 to theprocessing unit 600. If the information is not in the form of x and ycoordinates, it can be converted into this form by block 800. Block 800may naturally also be provided in connection with the touch pad 106,e.g. in connection with the touch screen 102 when the touch screentechnique is used. The processed information, which is presented e.g. asx and y coordinates, is then supplied to block 802, where the pressedkey is identified. The information on the identified key is supplied tothe application 804 that needs this information. The information on theidentified key is also supplied to block 806, which collects informationand carries out an analysis on the basis of which the tactile appearanceof the keyboard 104 is changed. The definitions of the new tactilekeyboard 104 appearance are then supplied from block 806 to block 808,which controls the determination of the keyboard 104 appearance. Thewhole block 808 or part of it may be located in connection with thetouch pad 106, e.g. in connection with the touch screen 102 when thetouch screen technology is employed. As can be seen from FIG. 8, thereis also a connection from block 802 to block 808: tactile feedback onthe keyboard use is given from the feedback unit 612, which is providedwith a connection to block 808.

In an embodiment, the processing unit 600 is configured to determine thevisual appearance of the keyboard 104 in addition to its tactileappearance. In that case, the visual appearance of the keyboard 104 isre-determined on the basis of the collected information and the analysiscarried out so as to make the keyboard 104 more ergonomic for the user,which makes the use of the keyboard 104 easier and/or the pressing of awrong key less likely. The determination of visual appearance isdescribed in Finnish application 20021162, which is incorporated hereinby reference. In the structure shown in FIG. 8, the visual appearancecan be determined in block 808, which is provided with a connection tothe display 102. In an embodiment, the processing unit 600 is configuredto determine the tactile appearance of the keyboard 104 and the visualappearance of the keyboard 104 so that they correspond to each other.

There are several alternatives for changing the shape of a single key;for example, the key shape is changed in the main directions, i.e. inthe x and y directions, or the key shape is changed arbitrarily, i.e.the key is shaped to correspond best to the manner of pressing the key,or the predetermined appearance of the key (e.g. preliminary shape andlocation of the key) is changed adaptively within the set limits. Theprocessing unit 600 may be configured to move the centre point of a keyaccording to the mean of the coordinates of key presses. The processingunit may be configured to change the key shape according to the varianceof the coordinates of key presses. Some ways of changing the key shapewill be discussed in greater detail below but at least the followingclustering techniques can be used for changing the key shape: vectorquantization VQ and expectation maximization EM. Also, other suitableadaptive and/or optimizing methods can be applied to changing the keyshape.

In the following, tests carried out by the applicant on the new adaptivekeyboard 104 will be described with reference to FIGS. 2, 3, 4 and 5. Aportable computer provided with a touch screen was used in the test. Akeyboard 104 illustrated in FIG. 2 was created both on the left and onthe right side of the touch screen. Thus the keyboard appearanceconsisted of adjacent rectangular keys: “1”, “2”, “3”, “4”, “5”, “6”,“7”, “8”, and “9”. The keyboard 104 on the left side of the touch screenwas used to simulate a situation where the user of the subscriberterminal 100 presses the keys with his left-hand thumb, and the keyboard104 on the right side was correspondingly used to simulate a situationwhere the user of the subscriber terminal 100 presses the keys with hisright-hand thumb.

Each key “1” to “9” was parameterized as shown in FIG. 3 by using itscentre point 320, 322, 324, 326, 328, 330, 334, 336. The borderlines300, 302, 304, 306, 308, 310, 312, 314 between the keys were definedimplicitly using the Voronoi regions of the centre points known fromvector quantization. For example, the Voronoi region of key “1” is therectangular area which is defined by borderlines 300, 302, 308 and 319and is closer to the centre point 320 of key “1” than to any othercentre point. Principles of vector quantization and computing of Voronoiregions are described in Allen Gersho & Robert M. Gray: VectorQuantization and Signal Compression, The Kluwer International Series inEngineering and Computer Science, 1992, which is incorporated herein byreference. In addition to the nine adaptive centre points 320, 322, 324,326, 328, 330, 332, 334, 336 of the keys, sixteen fixed centre points340, 342, 344, 346, 348, 350, 352, 354, 356, 358, 360, 363, 364, 366,368, 370 were determined. These were associated with the value ‘nil’ orwith the keyboard 104 border. The Voronoi regions of these fixed centrepoints were defined as regions outside the keyboard 104 border.

Then the actual test started. The test was carried out first on thekeyboard 104 on the left side and then on the keyboard on the rightside. A sequence consisting of four random numbers R1, R2, R3, R4 wasshown to the user (on the touch screen). The random numbers wereselected from 1 to 9. The user tried to key in these numbers using thekeyboard 104 to be tested with his respective thumb. The feeding thustook place by pressing the keyboard 104 key in question, i.e. theVoronoi region of the code book vector associated with the keyconcerned.

The real coordinates P1=(x1, y1), P2=(x2, y2), P3=(x3, y3) and P4=(x4,y4) of each key press were saved. Each press Pi was associated with theindex (i.e. key “1” to “9”) of the code book vector C(1) to C(9) thatwas closest to the press. Thus we obtained an input sequence of I1, I2,I3, I4.

If Ii was the same as number Ri, the press Pi coordinates (xi, yi) weresaved in the set L(Ri) of accepted key presses for the key C(Ri) inquestion. If li was associated with a key different from number Ri, itwas rejected.

After an adequate sample of key presses had been collected, e.g. hundredsequences consisting of four numbers, new code book vectors C(1) to C(9)were calculated for keys “1” to “9”. The new code book vector wasdetermined as the mean of the coordinates of the key in question in theset L(1)-L(9) of the coordinates of the presses of this key. After this,a keyboard 104 whose appearance had been re-determined to make it moreergonomic for the keyboard 104 user was shown to the user.

FIG. 4 shows the appearance of the keyboard 104 re-determined for theleft-hand thumb, and FIG. 5 shows the appearance of the keyboard 104re-determined for the right-hand thumb. In FIG. 4, the area 400 markedwith dash lines describes the fact that limits (e.g. the maximum size)can be defined for the appearance of the keyboard 104 which the keyboard104 appearance cannot exceed. The appearances of the keyboards 104 aresymmetrical to each other to some extent, and thus it can be assumedthat it has been determined ergonomically to support the function of thetestee's thumbs. Even though the visual appearance of a virtual keyboard104 was determined in the tests, the method and results described arealso directly applicable to the re-determination of the tactileappearance of a virtual keyboard 104.

FIGS. 7A and 7B illustrate what the keyboard of the subscriber terminals100 shown in FIGS. 1B and 1C could look like after its tactileappearance has been made more ergonomic using the present method. Theappearance of keys “*”, “0” and “#” is an estimate, but that of theother keys is based on the test described above. If the electronicdevice 100 is used by more than one person, the device may comprise analternative for each person. Thus the device 100 can determine,employing the method described, a separate keyboard 104 for each userthat best suits his ergonomics. The present method can also be used inthe product development phase, in which case the keyboard 104 appearancecan be designed as ergonomic as possible for a large number of people onthe basis of the tests described above.

There are numerous alternatives for the tactile appearance of a virtualkeyboard 104. In an embodiment, the processing unit 600 is configured todetermine the tactile keyboard 104 appearance by giving a first tactilefeedback on a key pressing. The first tactile feedback may imitate theclick generated by the pressing of a normal electromechanical key, forexample. In an embodiment, the processing unit 600 is configured todetermine several first tactile feedbacks, a separate one either foreach key or for each key group. In an embodiment, the processing unit600 is configured to determine the tactile keyboard 104 appearance bygiving a second tactile feedback on the key when it is not pressed. Thesecond feedback may be weak vibration, for example. In an embodiment,the processing unit 600 is configured to determine the tactile keyboard104 appearance by giving a third tactile feedback on an area which isoutside the keys but belongs to the tactile keyboard 104 appearance.When the user touches the touch pad described in FIG. 7B, for example,but none of the keys belonging to the virtual keyboard 104, a thirdfeedback is given. In its simplest, the third tactile feedback can bedetermined to correspond to a situation where no feedback is given fromthe feedback unit 612.

FIG. 9 illustrates some principles according to which the keyboard 104appearance can be re-determined. On the left side of FIG. 9 there arefour keys 900, 904, 908, 912. The points describe the coordinates of keypresses. The dash line denotes the location and size of new keys 902,906, 910, 914. As can be seen, the location of the keys has been changedso that the centre point of the key corresponds better to the centrepoint of the presses. The size of the keys has been changed consideringthe variance of key presses. In this example, a condition has been seton the appearance of the keys: the key has to be circular. The varianceof the presses of the upper keys 900, 904 is smaller than the varianceof the presses of the lower keys 908, 912, and thus the size of the newupper keys 902, 906 has been reduced from their original size, whereasthe size of the new lower keys 910, 914 has been increased from theiroriginal size. The right side of FIG. 9 illustrates one way ofimplementing vector quantization where key presses denoted by dots areconsidered data clusters. The appearance of the original keyboard 920consisting of four rectangles has been changed, using vectorquantization, into new kind of keyboard 922 consisting of four areaswhich are no longer rectangles.

In the following, a method of managing the virtual keyboard of anelectronic device will be described with reference to FIG. 10. Themethod starts in 1000, e.g. when the device is switched on. Then thetactile keyboard appearance is determined in 1002. The embodimentsdescribed above in connection with the device can be used in determiningthe tactile appearance. After the keyboard has been determined, the usermay start using it. When the user uses the keyboard, informationgenerated by pressing of the keyboard keys is received in 1004 and in1006 the key that was pressed is identified on the basis of theinformation. Then we proceed to 1008, where information is collected onthe use of the keyboard. The information comprises at least one of thefollowing: key press coordinates, keyboard control data, and force ofthe key press.

According to the method, the tactile appearance of the virtual keyboardis not necessarily re-determined constantly but e.g. at certainintervals, when the device recognizes a new user, or when the user makesa selection according to which the device re-determines the appearance.The method may comprise testing, in accordance with 1010, whether acondition for re-determining the tactile keyboard appearance isfulfilled. If the condition is not fulfilled in 1010, we move to 1004,otherwise to 1012, where the key presses are analyzed.

The analysis is used to generate at least one of the following results:coordinates of an accepted key press, coordinates of a rejected keypress, coordinates of a corrected key press, time used for successivekey presses, mean of the coordinates of the presses of one key, varianceof the coordinates of the presses of one key, another statisticalvariable describing the presses of one key. A key press at the border oftwo keys or a key press outside the keyboard can be identified as arejected press. A sequence where the press of the first key is deletedby the delete key, after which another key is pressed, can be identifiedas a corrected key press.

Naturally, the function of 1008 is not performed if one does not want tore-determine the tactile keyboard appearance. If, however, one wants todetermine the appearance, the tactile keyboard appearance isre-determined in 1014 on the basis of the collected information and theanalysis carried out so as to make the keyboard more ergonomic for theuser, which makes the use of the keyboard easier and the pressing of awrong key less likely. The tactile keyboard appearance comprises atleast one of the following: key size, key shape and key location. Limitswhich the keyboard appearance may not exceed can be defined. The keyshape may be changed in the main directions as described above, the keyshape may be changed arbitrarily, the key centre point may be movedaccording to the mean of the coordinates of key presses, the key shapemay be changed according to the variance of the coordinates of keypresses, or the key shape is changed using vector quantization,expectation maximization or clustering. Other suitable adaptive and/oroptimizing methods can also be applied to changing the key shape.

Switching off of the device can be tested in block 1016. If the deviceis switched off, we move to 1018, where the keyboard determined can besaved for the user in question, and thus the method ends. If the deviceis not switched off, we move from 1018 to 1004. Naturally, 1016 may belocated at other points of the method sequence. An embodiment of themethod employs the determination of the visual keyboard appearancedescribed above. A device 100 described above is suitable for performingthe method but also other devices where the keyboard shape can bechanged may be applicable.

Even though the invention was described with reference to an exampleaccording to the accompanying drawings, it is clear that the inventionis not restricted thereto but it may be modified in various ways withinthe inventive concept disclosed in the enclosed claims.

1. An electronic device comprising a touch pad, a processing unitconnected to the touch pad over a data transmission connection, theprocessing unit being configured to determine a virtual keyboard for thetouch pad and a tactile appearance of the keyboard, receive informationgenerated by the pressing of a keyboard key and identify the key thatwas pressed on the basis of the information, and a feedback unitconnected to the processing unit over a data transmission connection,the feedback unit being configured to provide tactile feedback on thekeyboard use for the device user, wherein the processing unit is furtherconfigured to collect information on the key presses and carry out ananalysis of them, and re-determine the tactile appearance of thekeyboard on the basis of the collected information and the analysiscarried out so as to make the keyboard more ergonomic for the user,which makes it easier to use the keyboard and/or the pressing of a wrongkey less likely.
 2. A device according to claim 1, wherein theinformation comprises at least one of the following: key presscoordinates, keyboard control data and force of the key press.
 3. Adevice according to claim 1, wherein the analysis is used to generate atleast one of the following results: coordinates of an acceptable keypress, coordinates of a rejected key press, coordinates of a correctedkey press, time used for successive key presses, mean of the coordinatesof presses of one key, variance of the presses of one key, anotherstatistical variable describing the presses of one key.
 4. A deviceaccording to claim 3, wherein the processing unit is configured toidentify a press at the border of two keys or outside the keyboard as arejected key press.
 5. A device according to claim 3, wherein theprocessing unit is configured to identify the following sequence as acorrected key press: the first key press is deleted by the delete key,after which another key is pressed.
 6. A device according to claim 1,wherein the tactile keyboard appearance comprises at least one of thefollowing: key size, key shape and key location.
 7. A device accordingto claim 1, wherein the processing unit is configured to define limitsfor the tactile keyboard appearance that the tactile keyboard appearancecannot exceed.
 8. A device according to claim 6, wherein the processingunit is configured to change the key shape in the main directions.
 9. Adevice according to claim 6, wherein the processing unit is configuredto change the key shape arbitrarily.
 10. A device according to claim 6,wherein the processing unit is configured to move the key centre pointaccording to the mean of the coordinates of key presses.
 11. A deviceaccording to claim 6, wherein the processing unit is configured tochange the key shape according to the variance of the coordinates of keypresses.
 12. A device according to claim 6, wherein the processing unitis configured to change the key shape using vector quantization,expectation maximization, clustering or another suitable adaptive and/oroptimizing method.
 13. A device according to claim 1, wherein theprocessing unit is configured to determine the tactile keyboardappearance by giving a first tactile feedback on a key press.
 14. Adevice according to claim 13, wherein the processing unit is configuredto determine various first tactile feedbacks, a separate one either foreach key or for each key group.
 15. A device according to claim 1,wherein any one of the preceding claims, the processing unit isconfigured to determine the tactile keyboard appearance by giving asecond tactile feedback on the key when it is not pressed.
 16. A deviceaccording to claim 1, wherein the processing unit is configured todetermine the tactile keyboard appearance by giving a third tactilefeedback on an area which is outside the keys but belongs to the tactilekeyboard appearance.
 17. A device according to claim 1, wherein theprocessing unit is configured to determine the visual keyboardappearance and re-determine the visual keyboard appearance on the basisof the collected information and the analysis carried out so as to makethe keyboard more ergonomic for the user, which makes it easier to usethe keyboard and/or the pressing of a wrong key less likely.
 18. Adevice according to claim 17, wherein the processing unit is configuredto determine the tactile keyboard appearance and the visual keyboardappearance so that they correspond to each other.
 19. A method ofmanaging a virtual keyboard of an electronic device, the methodcomprising: determining a tactile appearance of the virtual keyboard;and receiving information generated by the pressing of a keyboard keyand identifying the key pressed on the basis of the information;collecting information on the key presses and carrying out an analysisof them; and re-determining the tactile appearance of the keyboard onthe basis of the collected information and the analysis carried out soas to make the keyboard more ergonomic for the user, which makes the useof the keyboard easier and/or the pressing of a wrong key less likely.20. A method according to claim 19, wherein the information comprises atleast one of the following: key press coordinates, keyboard control dataand force of the key press.
 21. A method according to preceding claim19, the method comprising using the analysis is used to generate atleast one of the following results: coordinates of an accepted keypress, coordinates of a rejected key press, coordinates of a correctedkey press, time used for successive key presses, mean of the coordinatesof the presses of one key, variance of the presses of one key, anotherstatistical variable describing the presses of one key.
 22. A methodaccording to claim 21, further comprising identifying a press at theborder of two keys or outside the keyboard as a rejected key press. 23.A method according to claim 21, further comprising identifying thefollowing sequence as a corrected key press: the first key press isdeleted by the delete key, after which another key is pressed.
 24. Amethod according to claim 19, wherein the tactile keyboard appearancecomprises at least one of the following: key size, key shape and keylocation.
 25. A method according to claim 19, further comprisingdefining limits for the keyboard appearance that the keyboard appearancecannot exceed.
 26. A method according to claim 24, further comprisingchanging the key shape in the main directions.
 27. A method according toclaim 24, further comprising changing the key shape arbitrarily.
 28. Amethod according to claim 24, further comprising moving the key centrepoint according to the mean of the coordinates of key presses.
 29. Amethod according to claim 24, further comprising changing the key shapeaccording to the variance of the coordinates of key presses.
 30. Amethod according to claim 24, further comprising changing the key shapeusing vector quantization, expectation maximization, clustering oranother suitable adaptive and/or optimizing method.
 31. A methodaccording to claim 19, further comprising determining the tactilekeyboard appearance by giving a first tactile feedback on a key press.32. A device according to claim 31, further comprising determiningvarious first feedbacks, a separate one either for each key or for eachkey group.
 33. A method according to claim 19, further comprisingdetermining the tactile keyboard appearance by giving a second tactilefeedback on the key when it is not pressed.
 34. A method according toclaim 19, further comprising determining the tactile keyboard appearanceby giving a third tactile feedback on an area which is outside the keysbut belongs to the tactile keyboard appearance.
 35. A method accordingto claim 19, further comprising determining the visual keyboardappearance and re-determining the visual keyboard appearance on thebasis of the collected information and the analysis carried out so as tomake the keyboard more ergonomic for the user, which makes it easier touse the keyboard and/or the pressing of a wrong key less likely.
 36. Amethod according to claim 35, further comprising determining the tactilekeyboard appearance and the visual keyboard appearance so that theycorrespond to each other.